package com.erp.erp_entitys.money.rsp;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @ClassName : OrderDetailRsp
 * @Description : 订单详情出参实体
 * @Author : lst
 * @Date: 2022-01-24 06:17
 */
public class OrderDetailRsp implements Serializable {
    private static final long serialVersionUID = 7256701852789358952L;

    /**
     * 业务模式
     */
    private String businessModelName;

    /**
     * 外销合同号
     */
    private String billNo;

    /**
     * 签约日期
     */
    private Date signingDate;

    /**
     * 客户名称
     */
    private String customerName;

    /**
     * 客户编码
     */
    private String customerCode;

    /**
     * 业务员
     */
    private String salesmanName;

    /**
     * 操作员
     */
    private String operator;

    /**
     * 价格术语
     */
    private String priceTermsName;

    /**
     * 外销币种
     */
    private String currency;

    /**
     * 人民币汇率
     */
    private BigDecimal rmbRate;

    /**
     * 美元汇率
     */
    private BigDecimal usdRate;

    /**
     * 外销总额
     */
    private BigDecimal totalContractAmount;

    /**
     * 外销产品总额
     */
    private BigDecimal exportPrdtSum;

    /**
     * 外销费用
     */
    private BigDecimal exportCostSum;

    /**
     * 外销数量
     */
    private BigDecimal productNum;

    /**
     * 收款金额
     */
    private BigDecimal receivePaymentCollectionAmountSum;

    /**
     * 未收款金额(外销)
     */
    private BigDecimal unReceivePaymentCollectionAmountSum;

    /**
     * 最后一次水单认领日期
     */
    private Date receivePaymentCollectionClaimDate;

    /**
     * 采购单号
     */
    private String purchaseNo;

    /**
     * 采购数量
     */
    private BigDecimal purchaseAmountSum;

    /**
     * 采购成本总额
     */
    private BigDecimal purchasePrdtAndPartsSum;

    /**
     * 出运数量
     */
    private BigDecimal carryProductNum;

    /**
     * 出运产品总额
     */
    private BigDecimal costSubtotal;

    /**
     * 出运费用
     */
    private BigDecimal carryCostSum;

    /**
     * 结汇发票号
     */
    private String billExchangeNo;

    /**
     * 结汇产品总额
     */
    private  BigDecimal moneySubtotal;

    /**
     * 结汇费用
     */
    private BigDecimal costMoney;

    /**
     * 结汇数量
     */
    private BigDecimal goodsNum;

    /**
     * 签约公司
     */
    private String signingCompanyName;

    /**
     * 最后一次结汇日期
     */
    private Date invoiceDate;

    /**
     * 直接费用
     */
    private BigDecimal applicationAmount;


    public String getBusinessModelName() {
        return businessModelName;
    }

    public void setBusinessModelName(String businessModelName) {
        this.businessModelName = businessModelName;
    }

    public String getBillNo() {
        return billNo;
    }

    public void setBillNo(String billNo) {
        this.billNo = billNo;
    }

    public Date getSigningDate() {
        return signingDate;
    }

    public void setSigningDate(Date signingDate) {
        this.signingDate = signingDate;
    }

    public String getCustomerName() {
        return customerName;
    }

    public void setCustomerName(String customerName) {
        this.customerName = customerName;
    }

    public String getCustomerCode() {
        return customerCode;
    }

    public void setCustomerCode(String customerCode) {
        this.customerCode = customerCode;
    }

    public String getSalesmanName() {
        return salesmanName;
    }

    public void setSalesmanName(String salesmanName) {
        this.salesmanName = salesmanName;
    }

    public String getOperator() {
        return operator;
    }

    public void setOperator(String operator) {
        this.operator = operator;
    }

    public String getPriceTermsName() {
        return priceTermsName;
    }

    public void setPriceTermsName(String priceTermsName) {
        this.priceTermsName = priceTermsName;
    }

    public String getCurrency() {
        return currency;
    }

    public void setCurrency(String currency) {
        this.currency = currency;
    }

    public BigDecimal getRmbRate() {
        return rmbRate;
    }

    public void setRmbRate(BigDecimal rmbRate) {
        this.rmbRate = rmbRate;
    }

    public BigDecimal getUsdRate() {
        return usdRate;
    }

    public void setUsdRate(BigDecimal usdRate) {
        this.usdRate = usdRate;
    }

    public BigDecimal getTotalContractAmount() {
        return totalContractAmount;
    }

    public void setTotalContractAmount(BigDecimal totalContractAmount) {
        this.totalContractAmount = totalContractAmount;
    }

    public BigDecimal getExportPrdtSum() {
        return exportPrdtSum;
    }

    public void setExportPrdtSum(BigDecimal exportPrdtSum) {
        this.exportPrdtSum = exportPrdtSum;
    }

    public BigDecimal getExportCostSum() {
        return exportCostSum;
    }

    public void setExportCostSum(BigDecimal exportCostSum) {
        this.exportCostSum = exportCostSum;
    }

    public BigDecimal getProductNum() {
        return productNum;
    }

    public void setProductNum(BigDecimal productNum) {
        this.productNum = productNum;
    }

    public BigDecimal getReceivePaymentCollectionAmountSum() {
        return receivePaymentCollectionAmountSum;
    }

    public void setReceivePaymentCollectionAmountSum(BigDecimal receivePaymentCollectionAmountSum) {
        this.receivePaymentCollectionAmountSum = receivePaymentCollectionAmountSum;
    }

    public BigDecimal getUnReceivePaymentCollectionAmountSum() {
        return unReceivePaymentCollectionAmountSum;
    }

    public void setUnReceivePaymentCollectionAmountSum(BigDecimal unReceivePaymentCollectionAmountSum) {
        this.unReceivePaymentCollectionAmountSum = unReceivePaymentCollectionAmountSum;
    }

    public Date getReceivePaymentCollectionClaimDate() {
        return receivePaymentCollectionClaimDate;
    }

    public void setReceivePaymentCollectionClaimDate(Date receivePaymentCollectionClaimDate) {
        this.receivePaymentCollectionClaimDate = receivePaymentCollectionClaimDate;
    }

    public String getPurchaseNo() {
        return purchaseNo;
    }

    public void setPurchaseNo(String purchaseNo) {
        this.purchaseNo = purchaseNo;
    }

    public BigDecimal getPurchaseAmountSum() {
        return purchaseAmountSum;
    }

    public void setPurchaseAmountSum(BigDecimal purchaseAmountSum) {
        this.purchaseAmountSum = purchaseAmountSum;
    }

    public BigDecimal getPurchasePrdtAndPartsSum() {
        return purchasePrdtAndPartsSum;
    }

    public void setPurchasePrdtAndPartsSum(BigDecimal purchasePrdtAndPartsSum) {
        this.purchasePrdtAndPartsSum = purchasePrdtAndPartsSum;
    }

    public BigDecimal getCarryProductNum() {
        return carryProductNum;
    }

    public void setCarryProductNum(BigDecimal carryProductNum) {
        this.carryProductNum = carryProductNum;
    }

    public BigDecimal getCostSubtotal() {
        return costSubtotal;
    }

    public void setCostSubtotal(BigDecimal costSubtotal) {
        this.costSubtotal = costSubtotal;
    }

    public BigDecimal getCarryCostSum() {
        return carryCostSum;
    }

    public void setCarryCostSum(BigDecimal carryCostSum) {
        this.carryCostSum = carryCostSum;
    }

    public String getBillExchangeNo() {
        return billExchangeNo;
    }

    public void setBillExchangeNo(String billExchangeNo) {
        this.billExchangeNo = billExchangeNo;
    }

    public BigDecimal getMoneySubtotal() {
        return moneySubtotal;
    }

    public void setMoneySubtotal(BigDecimal moneySubtotal) {
        this.moneySubtotal = moneySubtotal;
    }

    public BigDecimal getCostMoney() {
        return costMoney;
    }

    public void setCostMoney(BigDecimal costMoney) {
        this.costMoney = costMoney;
    }

    public BigDecimal getGoodsNum() {
        return goodsNum;
    }

    public void setGoodsNum(BigDecimal goodsNum) {
        this.goodsNum = goodsNum;
    }

    public String getSigningCompanyName() {
        return signingCompanyName;
    }

    public void setSigningCompanyName(String signingCompanyName) {
        this.signingCompanyName = signingCompanyName;
    }

    public Date getInvoiceDate() {
        return invoiceDate;
    }

    public void setInvoiceDate(Date invoiceDate) {
        this.invoiceDate = invoiceDate;
    }

    public BigDecimal getApplicationAmount() {
        return applicationAmount;
    }

    public void setApplicationAmount(BigDecimal applicationAmount) {
        this.applicationAmount = applicationAmount;
    }


    /**
     * 重写toString
     */
    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("OrderDetailRsp").append('[')
                .append("businessModelName=")
                .append(businessModelName)
                .append(",billNo=")
                .append(billNo)
                .append(",signingDate=")
                .append(signingDate)
                .append(",customerName=")
                .append(customerName)
                .append(",customerCode=")
                .append(customerCode)
                .append(",salesmanName=")
                .append(salesmanName)
                .append(",operator=")
                .append(operator)
                .append(",priceTermsName=")
                .append(priceTermsName)
                .append(",currency=")
                .append(currency)
                .append(",rmbRate=")
                .append(rmbRate)
                .append(",usdRate=")
                .append(usdRate)
                .append(",totalContractAmount=")
                .append(totalContractAmount)
                .append(",exportPrdtSum=")
                .append(exportPrdtSum)
                .append(",exportCostSum=")
                .append(exportCostSum)
                .append(",productNum=")
                .append(productNum)
                .append(",receivePaymentCollectionAmountSum=")
                .append(receivePaymentCollectionAmountSum)
                .append(",unReceivePaymentCollectionAmountSum=")
                .append(unReceivePaymentCollectionAmountSum)
                .append(",receivePaymentCollectionClaimDate=")
                .append(receivePaymentCollectionClaimDate)
                .append(",purchaseNo=")
                .append(purchaseNo)
                .append(",purchaseAmountSum=")
                .append(purchaseAmountSum)
                .append(",purchasePrdtAndPartsSum=")
                .append(purchasePrdtAndPartsSum)
                .append(",carryProductNum=")
                .append(carryProductNum)
                .append(",costSubtotal=")
                .append(costSubtotal)
                .append(",carryCostSum=")
                .append(carryCostSum)
                .append(",billExchangeNo=")
                .append(billExchangeNo)
                .append(",moneySubtotal=")
                .append(moneySubtotal)
                .append(",costMoney=")
                .append(costMoney)
                .append(",goodsNum=")
                .append(goodsNum)
                .append(",signingCompanyName=")
                .append(signingCompanyName)
                .append(",invoiceDate=")
                .append(invoiceDate)
                .append(",applicationAmount=")
                .append(applicationAmount)
                .append(']');
        return sb.toString();
    }
}
